# 练习 10.8：猫和狗 创建⽂件 cats.txt 和 dogs.txt，在第⼀个⽂件中⾄少
# 存储三只猫的名字，在第⼆个⽂件中⾄少存储三条狗的名字。编写⼀
# 个程序，尝试读取这些⽂件，并将其内容打印到屏幕上。将这些代码
# 放在⼀个 try-except 代码块中，以便在⽂件不存在时捕获
# FileNotFoundError 异常，并显⽰⼀条友好的消息。将任意⼀个⽂
# 件移到另⼀个地⽅，并确认 except 代码块中的代码将正确地执⾏。

from pathlib import Path
try:
    catFile = Path("chapter10.3/cats.txt")
    dogFile = Path("chapter10.3/dogs.txt")

    print(catFile.read_text())
    print(dogFile.read_text())
except FileNotFoundError:
    print('文件不存在')


# 练习 10.9：静默的猫和狗 修改你在练习 10.8 中编写的 except 代码
# 块，让程序在⽂件不存在时静默失败。


print('-----10.9----------')

def getFileContext(file_path):
    try:
        file = Path(file_path)
        print(file.read_text())
        print(file.read_text().count('cat'))
    except FileNotFoundError:
        pass

file_names = ["dogs.txt",
              "chapter10.3/cats.txt"]
for file_path in file_names:
    getFileContext(file_path)


